package com.vision.core.cl;

import com.google.gwt.place.shared.PlaceController;
import com.google.web.bindery.event.shared.EventBus;
import com.vision.core.cl.ui.MainView;
import com.vision.core.cl.ui.MenuView;

/**
 * ClientFactory helpful to use a factory or dependency injection framework like GIN to obtain 
 * references to objects needed throughout your application like the {@link EventBus},
 * {@link PlaceController} and views.
 * 
 * @author Mark
 */
public interface ClientFactory {
	
	EventBus getEventBus();

	PlaceController getPlaceController();
	
	MenuView getMenuView();
	
	MainView getMainView();
	
}
